package com.ctvit.cch.core.service;

import java.util.List;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ctvit.cch.core.pojo.domain.CreativeScriptScene;
import com.ctvit.cch.core.pojo.dto.creative.CreativeScriptSceneEditDTO;
import com.ctvit.cch.core.pojo.vo.creative.CreativeScriptSceneListVO;

/**
 * 脚本场景Service接口
 *
 * @author heyingcheng
 * @date 2025/10/11
 */
public interface ICreativeScriptSceneService extends IService<CreativeScriptScene> {

    /**
     * 场景排序
     * 
     * @param ids 场景ID列表
     * @return 排序结果
     */
    boolean sort(List<String> ids);

    /**
     * 根据分镜状态查询场景列表
     * 
     * @param scriptId 脚本ID
     * @param status   分镜状态
     * @return 场景列表
     */
    List<CreativeScriptSceneListVO> listByShotStatus(String scriptId, String status);

    /**
     * 更新脚本设计状态
     *
     * @param sceneId       脚本设计ID
     * @param currentStatus 当前状态
     * @param targetStatus  目标状态
     * 
     * @return 更新结果
     */
    boolean updateShotStatus(String sceneId, String currentStatus, String targetStatus);

    /** 
     * 编辑脚本场景
     * 
     * @param dto 编辑参数
     * @return 编辑结果
     */
    boolean edit(CreativeScriptSceneEditDTO dto);

}